The invention is generally related to computers and computer software. More specifically, the invention is generally related to the display of information on a computer display.
Many computers utilize graphical user interfaces (GUI""s) to permit user interaction with information stored in such computers. In a GUI environment, users are typically able to interact with a computer through intuitive operations such as xe2x80x9cpointing and clickingxe2x80x9d on various graphical display elements displayed on a computer display with a graphical pointer controlled by a mouse or other user interface device.
One common type of display element used in GUI environments is a window display element, or window. A window typically includes a rectangular frame with a display region defined within the frame to display content information associated with the window. Additional user interface controls, such as scroll bars, resizing controls, title bars, menu bars, toolbars, etc., may also be provided around the periphery of the display region of a window to permit a user to interact with the window.
A computer application executing on a computer may use one or more windows. Moreover, multiple computer applications, each using separate windows, may also operate at the same time in a computer. As a result, in many instances multiple windows may be displayed at the same time on a computer display.
Given the limited amount of space on a computer display, windows are typically arranged in layers, giving the visual impression that a window displayed in a relatively higher layer overlaps a window displayed in a relatively lower layer. Interaction with a window by a user typically brings that window to the top layer, resulting in other windows being demoted to lower layers and possibly occluded at least in part by other windows or display elements.
In some instances, however, it may be desirable to permit a user to view information displayed within a window that is not currently displayed in the top layer of a computer display. For example, a user may wish to copy information between two windows, or simply be able to view the information in one window while interacting with another window. Furthermore, the author or creator of a window may wish to present interesting or important information (e.g., advertisements or instructions) to a user that is displayed regardless of whether the user is currently interacting with the window.
One manner of ensuring that a user can view information in one window while interacting with another window is to manually resize and/or move either or both windows so that the windows are displayed alongside one another in a non-overlapping fashion. Manual manipulation of window size and position, however, is often cumbersome and time consuming, and thus detrimental to productivity. Moreover, in many instances one or both of the windows may need to be resized to such a small space that the window becomes relatively useless.
Another manner of ensuring that a user can view information in a window is to declare the window as xe2x80x9calways on topxe2x80x9d, such that the window is always displayed in the top layer regardless of whether the window is currently selected for receiving user input. Often, however, setting a window to be on top is an operation that must be specifically programmed into the computer application associated with the window. Absent specific support in the computer application, the end user is typically not capable of performing such an operation.
Moreover, even if a user is specifically permitted to set a window to always be on top, displaying the window persistently in the top layer may cause the information displayed in other windows to become occluded, thus requiring additional resizing and/or moving of windows to enable information from those other windows to be viewed in other areas of the computer display. Setting a window to always be on top may also occlude an excessive amount of area on a computer display, particularly when only a relatively small portion of the information displayed in the window is of interest to the user.
Therefore, a significant need exists in the art for an improved manner of managing windows on a computer display, in particular to simplify the display of information within multiple overlapping windows and other such display elements.
The invention addresses these and other problems associated with the prior art by providing in one aspect an apparatus, program product, and method that define a portion of the window content information for a window as a prioritized display element that is displayed in a non-occluded region of a computer display in response to a determination that at least a portion of such a display element is occluded by another display element on the computer display. By doing so, interesting information associated with a prioritized display element can often remain visible on a computer display regardless of how a user manipulates windows and other display elements on the computer display.
Also, the invention provides in another aspect an apparatus, program product and method that manipulate multiple windows displayed on a computer display. Specifically, a window is moved in response to user input to move another window when it is determined that the movement of the other window would occlude at least a portion of the window. As such, occlusion of interesting portions of a window (e.g., specific display elements displayed as window contents and/or controls for the window) may be prevented.
In addition, the invention provides in yet another aspect an apparatus, program product and method that facilitate the selection of a subset from a set of information displayed on a computer. Specifically, a display representation of a set of information is displayed on a computer display, with a portion of the display representation occluded such that the display representation is partitioned into occluded and non-occluded regions. Then, in response to user input, that portion of the information represented by either of the regions is selected. As a consequence, future user operations may be collectively performed solely on the information represented by either an occluded or non-occluded region of a computer display.
These and other advantages and features, which characterize the invention, are set forth in the claims annexed hereto and forming a further part hereof. However, for a better understanding of the invention, and of the advantages and objectives attained through its use, reference should be made to the Drawings, and to the accompanying descriptive matter, in which there is described exemplary embodiments of the invention.